package io.renren.modules.customer.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.renren.common.enums.CommonProcessStatus;
import io.renren.common.jackson.TimestampDeserializer;
import io.renren.common.jackson.TimestampSerializer;
import lombok.Data;
import lombok.ToString;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;

/**
 * 
 * 
 * @author Sean
 * @email seanla@qq.com
 * @date 2020-03-17 19:29:25
 */
@Data
@TableName("t_message_request")
@Accessors(chain = true)
@ToString
public class MessageRequestEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 
	 */
	@TableId
	private Long id;
	/**
	 * 批次号
	 */
	@NotBlank(message = "批次号不能为空")
	private String batchNumber;
	/**
	 * 用户手机号码
	 */
	@NotBlank(message = "手机号码不能为空")
	private String mobilePhone;
	/**
	 * 序列号
	 */
	@NotBlank(message = "序列号不能为空")
	private String serialNumber;
	/**
	 * 发送日期
	 */
	@NotBlank(message = "发送日期不能为空")
	@JsonSerialize(using = TimestampSerializer.class)
	@JsonDeserialize(using = TimestampDeserializer.class)
	private Date sendDate;
	/**
	 * 请求时间
	 */
	@JsonSerialize(using = TimestampSerializer.class)
	@JsonDeserialize(using = TimestampDeserializer.class)
	private Date requestTime;
	/**
	 * 请求次数
	 */
	private Integer requestCount;
	/**
	 * 请求状态
	 */
	@NotBlank(message = "请求状态不能为空")
	private CommonProcessStatus requestStatus;
	/**
	 * 发送内容
	 */
	@NotBlank(message = "短信内容不能为空")
	private String messageContent;
	/**
	 * 请求响应内容
	 */
	private String responseContent;
	/**
	 * 短信方返回的消息id
	 */
	private String messageId;
	/**
	 * 创建者ID
	 */
	private Long createUserId;
	/**
	 * 创建时间
	 */
	@JsonSerialize(using = TimestampSerializer.class)
	@JsonDeserialize(using = TimestampDeserializer.class)
	private Date createTime;

}
